perm filename SERVO[VV,BGB] blob sn#134375 filedate 1974-12-11 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00015 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00003 00002	TITLE SERVO FOR BOTH CAMERAS - B.G.BAUMGART - DECEMBER 1974.
C00005 00003	START ADDRESS - MAIN EXECUTION USER MODE.
C00007 00004		CAIN "/"↔GO[LAC DEL↔ASH -1↔SKIPE↔DAC DEL↔GO L0]		HALVE
C00009 00005	
C00011 00006	SUBR(DPYFRM)		DISPLAY FRAME.
C00014 00007	SPACEWAR PDP-10 DISPLAY.
C00016 00008	SUBR(DPYCAM,CAMERA,COLUMN)	DISPLAY A CAMERA NODE.
C00018 00009	PDP-6 SPACE WAR JOB.
C00020 00010	SUBR(ADREAD)		READ ALL THE CAMERA POTS INTO THE BUFFER.
C00023 00011	SUBR(UPKPOT)		UNPACK THE POT READINGS INTO NOWCAM
C00025 00012	SUBR(DELCAM,C1,C2,C3)	COMPUTE DELTA CAMERA POSITIONS C1 ← C2 - C3.
C00027 00013	SUBR(SIERRA)
C00028 00014		SETZ 1,↔MOVM  FOCUS2(Q)
C00030 00015	SUBR(COHU)
C00031 ENDMK
C⊗;
TITLE SERVO FOR BOTH CAMERAS - B.G.BAUMGART - DECEMBER 1974.
	.INSERT M
	EXTERNAL DPYSET,DPYBUF,DPYOUT,AIVECT,AVECT
	EXTERNAL OCTDPY,DECDPY,FLODPY,DPYSTR,DPYBIG
	INTEGER CNT6,FUCKED,SERVO
	INTEGER META,CTRL,MTCT

;MEMORY MAP.
	MEMORY:	BLOCK 1000	;SPACE FOR NODES.
	BUFFER: BLOCK 30	;A/D INPUT BUFFER.
	PDL10:	BLOCK 200	;SPACEWAR-10 PDL.
	PDL6:	BLOCK 200	;SPACEWAR-6  PDL.
	PDL:	BLOCK 200	;USER MODE PDL.

;WORD POSITIONS IN A PHYSICAL CAMERA POSITION NODE.
	PAN1	←← 1↔	TILT1	←← 2↔	FOCUS1	←← 3↔	LENS1	←← 4
	PAN2	←← 5↔	TILT2	←← 6↔	FOCUS2	←← 7↔	ZOOM2	←← 10
	IRIS2	←← 11↔	TIME0	←← 12↔	REF1	←← 13↔	REF2	←← 14
	TICK0	←← 15

;COMMAND STATUS.
	DEL:	40

;POINTERS TO VARIOUS CAMERA BLOCKS.
	NOWCAM:	MEMORY		;CURRENT CAMERA POSITIONS.
	PRECAM: MEMORY + 20	;PREVIOUS CAMERA POSITIONS.
	DSTCAM: MEMORY + 40	;DESTINATION CAMERA POSITIONS.
	DELC1:	MEMORY + 60	;DELTA-1 (DST-NOW) SERVO !
	DELC2:	MEMORY + 100	;DELTA-2 (NOW-PRE) ALIVE ?
;START ADDRESS - MAIN EXECUTION USER MODE.
SA:	RESET↔DPYPOS -100↔DPYSIZ 12000
	LAC P,[IOWD 200,PDL]
	CALL(DPYFRM)
	LAC [XWD 200002,SW6]↔SPCWGO
	LAC [XWD 400017,SW10]↔SPCWGO

	OUTCHR["*"]
L0:	INCHRW

;STRIP OFF THE META CONTROL BITS.
	DZM CTRL↔DZM META
	TRZE 200↔DOM CTRL
	TRZE 400↔DOM META
	LAC 1,CTRL↔AND 1,META↔DAC MTCT
	
	CAIN 15↔GO[INCHRW↔GO L0-1]	;CR

	CAIN "E"↔EXIT			;EXIT
	CAIN "H"↔SPCWAR 636367		;HALT SPACEWAR.
	CAIN "C"↔GO SA			;CONTINUE SPACEWAR.
	CAIN "S"↔GO[			;SAVE CURRENT POSITION
	  LAC DSTCAM↔DAC 1
	  HRL NOWCAM↔BLT 17(1)↔GO L0]

	CAIN "R"↔DOM SERVO		;RETURN TO SAVED POSITION.
	CAIN " "↔DZM SERVO		;TURN SERVO OFF.

;SELECT LENS POSITION.
	CAIN "+"↔GO[
	  LAC 1,DSTCAM↔SETZ
	  SKIPE CTRL↔AOS
	  SKIPE META↔ADDI 2
	  DAC LENS1(1)↔GO L0]
	CAIN "/"↔GO[LAC DEL↔ASH -1↔SKIPE↔DAC DEL↔GO L0]		;HALVE
	CAIN "\"↔GO[LAC DEL↔ASH 1↔CAIGE 20000↔DAC DEL↔GO L0]	;DOUBLE.

	LAC 1,DSTCAM
	SKIPE CTRL↔GO L1
;COHU...
	CAIN "("↔GO[MOVN DEL↔ADDB PAN1(1)
	  CAMGE [-=1700]↔MOVNI =1700↔DAC PAN1(1)↔GO L0]
	CAIN ")"↔GO[MOVE DEL↔ADDB PAN1(1)
	  CAILE =1900↔MOVEI =1900↔DAC PAN1(1)↔GO L0]
	CAIN ";"↔GO[MOVN DEL↔ADDB TILT1(1)
	  CAMGE [-=1800]↔MOVNI =1700↔DAC TILT1(1)↔GO L0]
	CAIN ":"↔GO[MOVE DEL↔ADDB TILT1(1)
	  CAILE =0↔MOVEI =0↔DAC TILT1(1)↔GO L0]
	CAIN "-"↔GO[MOVN DEL↔ADDB FOCUS1(1)
	  CAIGE =0↔SETZ↔DAC FOCUS1(1)↔GO L0]
	CAIN "*"↔GO[MOVE DEL↔ADDB FOCUS1(1)
	  CAILE =1950↔MOVEI =1950↔DAC FOCUS1(1)↔GO L0]
	GO L0

L1:	CAIN "("↔GO[MOVE DEL↔ADDB PAN2(1)
	  CAILE =1300↔MOVEI =1300↔DAC PAN2(1)↔GO L0]
	CAIN ")"↔GO[MOVN DEL↔ADDB PAN2(1)
	  CAIGE =0↔MOVEI =0↔DAC PAN2(1)↔GO L0]

	CAIN ";"↔GO[MOVN DEL↔ADDB TILT2(1)
	  CAMGE [-=1700]↔MOVNI =1700↔DAC TILT2(1)↔GO L0]
	CAIN ":"↔GO[MOVE DEL↔ADDB TILT2(1)
	  CAILE =400↔MOVEI =400↔DAC TILT2(1)↔GO L0]

	CAIN "-"↔GO[MOVN DEL↔ADDB FOCUS2(1)
	  CAMGE [-=1900]↔MOVNI =1900↔DAC FOCUS2(1)↔GO L0]
	CAIN "*"↔GO[MOVE DEL↔ADDB FOCUS2(1)
	  CAILE =1900↔MOVEI =1900↔DAC FOCUS2(1)↔GO L0]

	CAIN "¬"↔GO[MOVN DEL↔ADDB ZOOM2(1)
	  CAMGE [-=2000]↔MOVNI =2000↔DAC ZOOM2(1)↔GO L0]
	CAIN "⊗"↔GO[MOVE DEL↔ADDB ZOOM2(1)
	  CAILE =2000↔MOVEI =2000↔DAC ZOOM2(1)↔GO L0]

	CAIN "["↔GO[MOVN DEL↔ADDB IRIS2(1)
	  CAMGE [-=1900]↔MOVNI =1900↔DAC IRIS2(1)↔GO L0]
	CAIN "]"↔GO[MOVE DEL↔ADDB IRIS2(1)
	  CAILE =1900↔MOVEI =1900↔DAC IRIS2(1)↔GO L0]
	GO L0
SUBR(DPYFRM)		;DISPLAY FRAME.
COMMENT .-----------------------------------------------------------.
	ROW←←11 ↔ COL←←12
	CALL(DPYSET,DPYBUF)↔CALL(AIVECT,[-=511],[0])
	CALL(AVECT,[=511],[0])↔CALL(AVECT,[=511],[=450])
	CALL(AVECT,[-=511],[=450])↔CALL(AVECT,[-=511],[0])
	CALL(DPYBIG,[3])
	MOVEI ROW,=420 ↔ MOVNI COL,=370
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/PREVIOUS/]])↔ADDI COL,=150
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/CURRENT/]])↔ADDI COL,=150
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/FINAL/]])↔ADDI COL,=150
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/DEL-SERVO/]])↔ADDI COL,=150
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/DEL-TICK/]])↔ADDI COL,=150
	MOVEI ROW,=400 ↔ MOVNI COL,=500
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/PAN1/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/TILT1/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/FOCUS1/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/LENS1/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/REF1/]])↔SUBI ROW,=30
	SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/PAN2/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/TILT2/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/FOCUS2/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/ZOOM2/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/IRIS2/]])↔SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/REF2/]])↔SUBI ROW,=30
	SUBI ROW,=30
CALL(AIVECT,COL,ROW)↔CALL(DPYSTR,[[ASCIZ/TICK0/]])↔SUBI ROW,=30
	CALL(DPYOUT,[0])
	POP0J
ENDR DPYFRM;BGB 9 DECEMBER 1974 -------------------------------------
;SPACEWAR PDP-10 DISPLAY.
SW10:	GO 3,@[.+1]		;EXIT USER IOT MODE.
	LAC P,[IOWD 200,PDL10]
	CALL(DPYSET,DPYBUF)
	CALL(DPYBIG,[3])
	CALL(DPYCAM,PRECAM,[0])	;PREVIOUS CAMERA.
	CALL(DPYCAM,NOWCAM,[1])	;NOW CAMERA.
	CALL(DPYCAM,DSTCAM,[2])	;DESTINATION CAMERA.
	CALL(DPYCAM,DELC1,[3])	;SERVO DELTA.
	CALL(DPYCAM,DELC2,[4])	;ACTION DELTA.
	CALL(DPYBIG,[2])
CALL(AIVECT,[=330],[=460])↔CALL(DPYSTR,[[ASCIZ"A/D FUCKUPS "]])↔CALL(DECDPY,FUCKED)
SKIPE SERVO↔GO[CALL(AIVECT,[=360],[=430])↔CALL(DPYSTR,[[ASCIZ"SERVO ON"]])↔GO .+1]
SKIPN SERVO↔GO[CALL(AIVECT,[=360],[=430])↔CALL(DPYSTR,[[ASCIZ"SERVO OFF"]])↔GO .+1]
CALL(AIVECT,[=360],[=400])↔CALL(DPYSTR,[[ASCIZ"DELTA "]])↔CALL(DECDPY,DEL)
	CALL(DPYOUT,[1])
	DISMIS
SUBR(DPYCAM,CAMERA,COLUMN)	;DISPLAY A CAMERA NODE.
COMMENT .-----------------------------------------------------------.
	Q←←10 ↔	ROW←←11
	LAC COLUMN↔IMULI =150↔SUBI =350↔DAC COL#
	LAC Q,CAMERA
	MOVEI ROW,=400
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{PAN1(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{TILT1(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{FOCUS1(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{LENS1(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{REF1(Q)})↔SUBI ROW,=30
	SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{PAN2(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{TILT2(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{FOCUS2(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{ZOOM2(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{IRIS2(Q)})↔SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{REF2(Q)})↔SUBI ROW,=30
	SUBI ROW,=30
	CALL(AIVECT,COL,ROW)↔CALL(DECDPY,{TICK0(Q)})↔SUBI ROW,=30
	POP2J
ENDR DPYCAM;BGB 8 DECEMBER 1974 -------------------------------------
;PDP-6 SPACE WAR JOB.
SW6:	LAC P,[IOWD 10,PDL6]	;SW-6 PROGRAM PDL.
	AOS CNT6		;ENTRY COUNTER.
	CALL(ADREAD)		;READ THE CAMERA POTS INTO THE BUFFER.
	CALL(UPKPOT)		;UNPACK THE BUFFER INTO CURRENT POTS.
	CALL(REFCHK)↔GO[
	 AOS FUCKED↔GO .-3]
	CALL(DELCAM,DELC1,DSTCAM,NOWCAM)	;SERVO.
	CALL(DELCAM,DELC2,NOWCAM,PRECAM)	;VELOCITIES.
	SKIPN SERVO↔GO[
	  CONO 600,40	;STOP THE COHU
	  DATAO 410,[0] ;STOP THE SIERRA
	  DISMIS]
	CALL(COHU)	;MOVE THE COHU
	CALL(SIERRA)	;MOVE THE SIERRA
	DISMIS

SUBR(REFCHK)	;SKIP IF REFERENCE VOLTAGES ARE OK.
COMMENT .-----------------------------------------------------------.
	LAC 1,NOWCAM
	LAC REF1(1)↔CAIL =1400↔CAILE =1600↔POP0J
	LAC REF2(1)↔CAIL =1900↔CAILE =2000↔POP0J
	AOS(P)↔POP0J
ENDR REFCHK;BGB 8 DECEMBER 1974 -------------------------------------
SUBR(ADREAD)		;READ ALL THE CAMERA POTS INTO THE BUFFER.
COMMENT .-----------------------------------------------------------.
ACCUMULATORS{PR,BASE}
	DC ←← 204		;136 DATA CONTROLLER.
	AD ←← 424		;A/D CONVERTER.
	APR←← 0			;ARITHMETIC PROCESSOR.
	PI ←← 4			;PRIORITY INTERRUPT SYSTEM.

;RESET PROTECTION/RELOCATION.
	DAC  PR,PROREL#			;SAVE PROTECTION/RELOCATION.
	HRLI PR,776000↔DATAO APR,PR	;SET INFINITE PROTECTION.
	MOVSI BASE,1↔SUBI BASE,(PR)	;BASE ADDR FOR ABS ADDRESSING.

;REPLACE SYSTEM'S PI-1 WORDS.
	CONO PI,1B26+100	;PI CHANNEL-1 OFF.
	LAC [BLKI DC,BUFPTR]↔ADDI(PR)↔EXCH 42(BASE)↔DAC SAVE42#	;BLKI
	LAC   [JSR ICODE]↔ADDI(PR)↔EXCH 43(BASE)↔DAC SAVE43#	;JSR
	LAC [IOWD 12,BUFFER]↔ADDI (PR)↔DAC BUFPTR#		;IOWD
	DATAO APR,PROREL

;RELOCATE INTERRUPT CODE.
	MOVEI DONEFLAG(PR)↔DAP L1
	MOVEI ICODE(PR)↔DAP L2

;INIT THE TRANSFER.
	SETZM DONEFLAG
	CONO AD,4000		;STOP THE A/D.
	CONO DC,4251		;INIT THE 136, INPUT 12-BIT BYTES, PI-1.
	CONO AD,722030		;CHANNEL 72, AUTO-INC, SPEED 3.
	CONO PI,1B25+100	;PI CHANNEL-1 ON.

;WAIT FOR TRANSFER TO COMPLETE.
	SKIPN DONEFLAG↔GO .-1

;RESTORE SYSTEM'S PI-1 WORDS.
	DATAO APR,PR
	LAC SAVE42↔DAC 42(BASE)
	LAC SAVE43↔DAC 43(BASE)
	DATAO APR,PROREL
	POP0J

;CHANNEL-1 INTERRUPT ROUTINE.
ICODE:	0↔CONO DC,0		;TURN OFF 136 DATA CONTROL.
	CONO AD,4000		;TURN OFF A/D
	CONO PI,1B26+100	;TURN OFF PI CHANNEL-1.
L1:	SETOM DONEFLAG#		;SUFFERS ADDRESS MODIFICATION.
L2:	JRST 12,@ICODE		;SUFFERS ADDRESS MODIFICATION.
ENDR ADREAD;REG & BGB 9 DECEMBER 1974 --------------------------------
SUBR(UPKPOT)		;UNPACK THE POT READINGS INTO NOWCAM
COMMENT .-----------------------------------------------------------.
	LAC PRECAM↔DAC 1↔HRL NOWCAM↔BLT 17(1)	;SAVE PREVIOUS CAMR.
	LAC 1,NOWCAM
	CONI 730,TIME0(1)			;READ MSEC CLOCK.
	CONI 600,0↔LDB[POINT 2,0,22]↔DAC LENS1(1)
	LAC CNT6↔DAC TICK0(1)			;NUMBER OF SW ENTRIES.

	LDB [POINT 12,BUFFER+7,11]↔ROT -=12↔ASH -=24↔DAC FOCUS1(1)
	LDB [POINT 12,BUFFER+7,23]↔ROT -=12↔ASH -=24↔DAC TILT1(1)
	LDB [POINT 12,BUFFER+7,35]↔ROT -=12↔ASH -=24↔DAC PAN1(1)
	LDB [POINT 12,BUFFER+9,11]↔ROT -=12↔ASH -=24↔DAC REF1(1)

	LDB [POINT 12,BUFFER+0,11]↔ROT -=12↔ASH -=24↔DAC REF2(1)
	LDB [POINT 12,BUFFER+0,23]↔ROT -=12↔ASH -=24↔DAC PAN2(1)
	LDB [POINT 12,BUFFER+0,35]↔ROT -=12↔ASH -=24↔DAC TILT2(1)

	LDB [POINT 12,BUFFER+1,11]↔ROT -=12↔ASH -=24↔DAC FOCUS2(1)
	LDB [POINT 12,BUFFER+1,23]↔ROT -=12↔ASH -=24↔DAC ZOOM2(1)
	LDB [POINT 12,BUFFER+1,35]↔ROT -=12↔ASH -=24↔DAC IRIS2(1)
	POP0J
ENDR UPKPOT;BGB 8 DECEMBER 1974 -------------------------------------
SUBR(DELCAM,C1,C2,C3)	;COMPUTE DELTA CAMERA POSITIONS C1 ← C2 - C3.
COMMENT .-----------------------------------------------------------.
	LAC 3,C1↔LAC 2,C2↔LAC 1,C3
	LAC FOCUS1(1)↔SUB FOCUS1(2)↔DAC FOCUS1(3)
	LAC  TILT1(1)↔SUB  TILT1(2)↔DAC  TILT1(3)
	LAC   PAN1(1)↔SUB   PAN1(2)↔DAC   PAN1(3)
	LAC  LENS1(1)↔SUB  LENS1(2)↔DAC  LENS1(3)
	LAC FOCUS2(1)↔SUB FOCUS2(2)↔DAC FOCUS2(3)
	LAC  TILT2(1)↔SUB  TILT2(2)↔DAC  TILT2(3)
	LAC   PAN2(1)↔SUB   PAN2(2)↔DAC   PAN2(3)
	LAC  IRIS2(1)↔SUB  IRIS2(2)↔DAC  IRIS2(3)
	LAC  ZOOM2(1)↔SUB  ZOOM2(2)↔DAC  ZOOM2(3)
	POP3J
ENDR DELCAM;BGB 8 DECEMBER 1974 -------------------------------------
SUBR(SIERRA)
COMMENT .-----------------------------------------------------------.
	ACCUMULATORS{Q}
	LAC Q,DELC1↔SETZM DRIVE

	SETZ 1,↔MOVM  PAN2(Q)
	CAIL  =10↔MOVEI 1,=35
	CAIL =100↔MOVEI 1,=40
	CAIL =200↔MOVEI 1,=50
	CAIL =400↔MOVEI 1,=63
	SKIPL PAN2(Q)↔MOVNS 1
	DPB 1,[POINT 7,DRIVE,6]		;PAN

	SETZ 1,↔MOVM TILT2(Q)
	CAIL  =15↔MOVEI 1,=15
	CAIL  =20↔MOVEI 1,=20
	CAIL  =25↔MOVEI 1,=25
	CAIL  =50↔MOVEI 1,=30
	CAIL =100↔MOVEI 1,=35
	CAIL =200↔MOVEI 1,=40
	CAIL =300↔MOVEI 1,=50
	CAIL =400↔MOVEI 1,=60
	SKIPL TILT2(Q)↔MOVNS 1
	DPB 1,[POINT 7,DRIVE,13]	;TILT
	SETZ 1,↔MOVM  FOCUS2(Q)
	CAIL  =20↔MOVEI 1,=35
	CAIL =100↔MOVEI 1,=40
	CAIL =200↔MOVEI 1,=50
	CAIL =400↔MOVEI 1,=63
	SKIPL FOCUS2(Q)↔MOVNS 1
	DPB 1,[POINT 7,DRIVE,20]	;FOCUS

	SETZ 1,↔MOVM  ZOOM2(Q)
	CAIL  =15↔MOVEI 1,=15
	CAIL  =30↔MOVEI 1,=20
	CAIL  =80↔MOVEI 1,=35
	CAIL =100↔MOVEI 1,=40
	CAIL =200↔MOVEI 1,=50
	CAIL =400↔MOVEI 1,=63
	SKIPL ZOOM2(Q)↔MOVNS 1
	DPB 1,[POINT 7,DRIVE,27]	;ZOOM

	SETZ 1,↔MOVM  IRIS2(Q)
	CAIL  =15↔MOVEI 1,=35
	CAIL =100↔MOVEI 1,=40
	CAIL =200↔MOVEI 1,=50
	CAIL =400↔MOVEI 1,=63
	SKIPL IRIS2(Q)↔MOVNS 1
	DPB 1,[POINT 7,DRIVE,34]	;IRIS

	DATAO 410,DRIVE↔POP0J
DRIVE:	0
ENDR SIERRA;BGB 9 DECEMBER 1974 -------------------------------------
SUBR(COHU)
COMMENT .-----------------------------------------------------------.
	ACCUMULATORS{Q}
	LAC Q,DELC1 ↔ MOVE 1,[CONO 600,40]

	MOVM  PAN1(Q)↔CAIG 15↔GO .+5
	SKIPL PAN1(Q)↔IORI 1,1B21
	SKIPG PAN1(Q)↔IORI 1,1B20

	MOVM  TILT1(Q)↔CAIG 10↔GO .+5
	SKIPL TILT1(Q)↔IORI 1,1B19
	SKIPG TILT1(Q)↔IORI 1,1B18

	MOVM  FOCUS1(Q)↔CAIG 10↔GO .+5
	SKIPL FOCUS1(Q)↔IORI 1,1B23
	SKIPG FOCUS1(Q)↔IORI 1,1B22

	SKIPE LENS1(Q)↔IORI 1,1B24

	XCT 1 ↔	POP0J

ENDR COHU;BGB 9 DECEMBER 1974 ----------------------------------------

END SA